1. Field of the invention
The present invention relates to an ignition timing controlling apparatus for an internal combustion engine, especially to an ignition timing controlling apparatus for an internal combustion engine used for driving a vehicle or the like.
2. Description of Related Art
FIG. 1 is a block diagram showing a construction of a conventional ignition timing controlling apparatus. In the figure, reference numeral 2 is a load sensor, such as a boost sensor or the like which detects boost pressure of the inside of an intake manifold of an engine. The load sensor 2 detects the load of the engine. The load sensor 2 is connected to an input interface (hereinafter to be called input I/F) 3 together with a rotation sensor 1 which detects the number of rotations of a crank shaft (or a cam shaft) of the engine and a referential position of a rotational angle thereof (hereinafter to be called as a crank angle). The input I/F 3 is connected to a microprocessor unit (hereinafter to be called MPU) 4 through a bus. The MPU 4 is connected through a bus to a control program, a ROM 5 storing information such as target ignition timing data wherein the number of rotations and load being set as parameters, a RAM 6 storing various kinds of control information, and an output interface (hereinafter to be called output I/F) 10. The MPU 4 has a target ignition timing calculating means 7, period calculating means 8, and ignition timing calculating means 9. The target ignition timing calculating means 7 reads out the target ignition timing data stored in the ROM 8 as a parameter being the number of rotations and load which indicate the running state of the engine. The readout target ignition timing data is compensated by the other calculated data such as water temperature, thereby calculating the target ignition timing data. The period calculating means 8 calculates the detected period accordingly to the referential position detected by the rotation sensor 1. The ignition timing calculating means 9 calculates the ignition time required for the ignition from the referential position on the basis of the calculated period, detected referential position, and calculated target ignition timing data. When the rotation sensor 1 detects the referential position, the MPU 4 output an ignition signal instructing the ignition to the engine at the calculated ignition timing to the output I/F 10 through a bus.
The output I/F 10 is connected to a base of an ignition unit 11 which uses an emitter-grounded transistor. The collector of the ignition unit 11 is connected to one end of a primary coil of an ignition coil 12. The ignition coil 12 connects one end of a secondary coil to an ignition plug 13, and high voltage is applied thereto. The ignition unit 11 on-off controls the primary coil by using the ignition signal. The other end of the primary coil is batch-connected to the other end of the secondary coil and a battery being a power source through a key switch (not shown).
Next, explanation will be given on the operation of a conventional ignition timing control, by taking four-cycle four-cylinder engine as an example.
FIG. 2 is a flow chart showing the operation of a conventional ignition timing controlling apparatus shown in FIG. 1.
The conventional ignition timing controlling apparatus of an internal combustion engine is constructed as above mentioned, and obtains referential position information and number-of-rotations information of crank rotational angle from the rotation sensor 1, and obtains load information of the engine from the load sensor 2. Each information is inputted to the MPU 4 through the input I/F 3. The target ignition timing data stored in the ROM 5 is read out according to the inputted number-of-rotations information and the load information, and the target ignition timing .theta..sub.O indicated by the crank angle of the engine is obtained at the target ignition timing calculating means 7. Next, according to the control program stored in the ROM 5, and on the basis of the flow chart shown in FIG. 2, calculation to determine the ignition timing is executed at every referential position of the crank angle. At first, in Step S1, the period T.sub.n-1 of the referential position .theta..sub.R of the last crank angle is calculated by the period calculating means 8. Next, the processing advances to Step S2, and the time T.sub.a =(.theta..sub.R -.theta..sub.O /180).times.T.sub.n-1 (in case of four cycle four-cylinder engine, referential position for ignition at every 180.degree. is to be detected) required for the ignition from the referential position .theta..sub.R to the ignition timing .theta..sub.O is calculated at the ignition timing calculating means 9. And in Step S3, a timer inside the MPU 4 is set to the time T.sub.a at the referential position .theta..sub.O. After the time T.sub.a has passed, the ignition signal is outputted through the output I/F 10. The ignition signal drives the ignition unit 11 then the transistor is turned on, thereby ignition operation of the engine is carried out.
FIG. 3 is a timing chart showing the operating waveform of each part, the operating waveform of a detecting signal of the rotation sensor 1 being shown in FIG. 3(a), and the electric current of the primary coil of the ignition coil 12 being shown in FIG. 3(b) respectively. Hereupon, the referential position .theta..sub.R is detected at the leading edge of the detecting signal, at that time the timer is set to the time T.sub.a, the transistor of the ignition unit 11 is turned on after the time T.sub.a has passed, and the electric current of the ignition coil 12 to the primary coil changes rapidly to be zero, thereby inducing high voltage at the secondary coil.
FIG. 4 is a graph showing a rotation variation of the internal combustion engine, the axis of ordinate thereof showing the detection period of the rotation referential position, and the axis of abscissa showing the detecting number of the rotation referential position respectively. FIG. 5 is a graph showing variation of ignition timing, the axis of ordinate showing the ignition timing .theta..sub.A, and the axis of abscissa showing the number of ignitions.
In the conventional ignition timing controlling apparatus of the internal combustion engine as above mentioned, in the case where there is a rotational variation of a cam shaft or a crank shaft of the engine, especially a rotational variation which causes, as shown in FIG. 4, large and small huntings at every rotation of period T, there is a problem that an actual ignition timing to the target ignition timing .theta..sub.O creates large huntings as shown with solid line in FIG. 5, leading the running of the engine unstabilized, because, although the small (or large) period T.sub.n of this time should be used to calculate the ignition timing, the large (or small) period T.sub.n-1 of the last time is used in actual calculation.